1. Field of the Invention
This invention generally relates to a data transfer apparatus, and more specifically to a data transfer apparatus, such as a computer and a mobile telephone, for performing mutual data transfer by connecting over a USB interface.
2. Description of the Related Art
A USB (Universal Serial Bus) interface is widely used because it is capable of unifying connections between a computer and various peripheral devices as one type of interface. The USB interface includes transfer modes such as isochronous transfer, bulk transfer, control transfer, and interrupt transfer. They can be used according to each purpose. For example, since the isochronous transfer has no retransmission method for a data error, it is used in transferring audio data and moving image data, and so on, having no serious influence in a case that 1-bit data loses. The bulk transfer is used by a number of peripheral devices, for example, in transferring a large amount of data using a digital camera, MO, CD-ROM, printer, scanner, etc. The control transfer is used in data transfer using, for example, a mouse.
There is the technology proposed for selectively using the above-mentioned transfer modes of the USB interface depending on the use between a host computer and a digital camera (refer to Japanese Patent Laid-Open No. 2001-177746).
Normally, with the USB interface, each of electronic device is given an opportunity of data transfer once per 1 ms (millisecond). However, when one computer is connected to a plurality of electronic devices using the USB interface (hereinafter referred to as USB devices), the band available for one USB device is reduced. As a result, the following problems occur.
That is, isochronous transfer is assigned a higher priority to guarantee real-time use of audio data, etc. Therefore, a USB device for isochronous transfer is assigned a data transfer opportunity without fail at a constant interval (for example, once per 1 ms). However, the bulk transfer and control transfer are not originally guaranteed a transfer rate. Therefore, when the number of USB devices for isochronously transferring data increases, the data transfer is prioritized, and the USB devices for the bulk transfer and control transfer are hardly given an opportunity of data transfer. Therefore, with a USB device for the bulk transfer and control transfer, the amount of data which is taken as an object of transfer per unit time (for example, 1 ms) decreases, and the USB interface is a bottleneck in data transfer.
In addition to the above-mentioned problem, assuming that the amount of transferred data per packet in the bulk transfer is 64 bytes, and a transfer opportunity is given once (one packet) per 1 ms, only a data transfer rate of 512 kbps (kilobit/second) can be expected. On the other hand, viewed from the USB interface, the opportunity of data transfer is periodically given, but the data transfer seems extremely inefficient, or a restricted data transfer opportunity is to be assigned to extremely inefficient data transfer. These issues apply to the control transfer. On the other hand, the amount of data which is taken as an object of transfer per unit time in a USB device for the bulk transfer or control transfer tends to increase. However, as described above, since a number of peripheral devices perform the bulk transfer, the USB interface is a bottleneck in data transfer in this regard.